package com.inikolova.numericpuzzle;

public class Main {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO: Make this setting configurable through UI, Config, file in JSON?
		   int matrixSize = 4;
		   
			int[][] targetState = new int[matrixSize][matrixSize];
			int id = 1;
			for (int x = 0; x < matrixSize; x++) {
				for (int y = 0; y < matrixSize; y++) {
					targetState[x][y] = id++;
				}
			}
			// Last cell is the free cell
			targetState[matrixSize-1][matrixSize-1] = NumericPuzzle.FREE_CELL_ID;
			
			NumericPuzzle puzzle = new NumericPuzzle(targetState);
			System.out.println(puzzle);
			
			NumericPuzzleViewer viewer = new NumericPuzzleViewer();
			viewer.CreateMainView(puzzle);
	}

}
